package com.zh.work.entity.merch;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.zh.common.entity.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

/**
 * code is far away from bug with the animal protecting
 * ┏┓　　　┏┓
 * ┏┛┻━━━┛┻┓
 * ┃　　　　　　　┃
 * ┃　　　━　　　┃
 * ┃　┳┛　┗┳　┃
 * ┃　　　　　　　┃
 * ┃　　　┻　　　┃
 * ┃　　　　　　　┃
 * ┗━┓　　　┏━┛
 * 　　┃　　　┃神兽保佑
 * 　　┃　　　┃代码无BUG！
 * 　　┃　　　┗━━━┓
 * 　　┃　　　　　　　┣┓
 * 　　┃　　　　　　　┏┛
 * 　　┗┓┓┏━┳┓┏┛
 * 　　　┃┫┫　┃┫┫
 * 　　　┗┻┛　┗┻┛
 *
 * @Description: 历史变更记录基类
 * @Author: Li.HuiNeng
 * @Create in: 2019-09-05 11:28
 * @Version: 1.0.1
 */
@ApiModel("历史变更记录基类")
@Data
@EqualsAndHashCode(callSuper = true)
@JsonInclude(JsonInclude.Include.NON_NULL)
public class BaseChangeEntity extends BaseEntity{
    protected static final long serialVersionUID = -2754086364044236334L;
    @ApiModelProperty(value = "商户ID", name = "merchId")
    @TableField(value = "merch_id")
    protected Long merchId;
    @ApiModelProperty(value = "商户简称", name = "merchName")
    @TableField("merch_name")
    protected String merchName;
    @ApiModelProperty(value = "商户编号", name = "merchNo")
    @TableField(exist = false)
    protected String merchNo;
    @ApiModelProperty(value = "代理商号", name = "agentNo")
    @TableField(value = "agentno")
    protected String agentNo;
    @ApiModelProperty(value = "状态(1-审核中，2-审核通过，3-审核拒绝)", name = "auditStatus")
    @TableField("audit_status")
    protected Integer auditStatus;
    @ApiModelProperty(value = "审核时间", name = "auditDate")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    protected Date auditDate;
    @ApiModelProperty(value = "描述", name = "reason")
    @TableField("reason")
    protected String reason;
    @ApiModelProperty(value = "操作员", name = "userName")
    @TableField("user_name")
    protected String userName;
    @ApiModelProperty(value = "创建时间", name = "addTime")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField("add_time")
    protected Date addTime;
    @ApiModelProperty(value = "修改时间", name = "modTime")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField("mod_time")
    protected Date modTime;
}
